﻿using System;
using System.Collections.Generic;
using System.Text;
using XDesigner.ORM;

namespace 刘颜红销售项目管理.Business.DOM
{
    [ORMType("项目基本信息表", LogReference = ORMBooleanValue.True)]
    public class Class项目基本信息
    {
        private int _RecordID = 0;
        [ORMKeyField()]
        [ORMNewValueGenerate(ORMNewValueGenerateStyle.Increase)]
        public virtual int RecordID
        {
            get { return _RecordID; }
            set { _RecordID = value; }
        }

        private string _项目名称 = null;
        [ORMSort( ORMSortStyle.Ascent )]
        public virtual string 项目名称
        {
            get { return _项目名称; }
            set { _项目名称 = value; }
        }

        private string _项目地址 = null;

        public virtual string 项目地址
        {
            get { return _项目地址; }
            set { _项目地址 = value; }
        }

        private Class工作单位 _所属单位 = null;
        [ORMField("单位编号")]
        [ORMRelation( ORMRelationStyle.OneToOne )]
        [System.Xml.Serialization.XmlIgnore()]
        [ORMDelay()]
        [ORMParentReference()]
        public virtual Class工作单位 所属单位
        {
            get { return _所属单位; }
            set { _所属单位 = value; }
        }

        private Class人员基本信息 _现场联系人 = null;
        [ORMField("现场联系人编号")]
        [ORMRelation( ORMRelationStyle.OneToOne )]
        [System.Xml.Serialization.XmlIgnore()]
        [ORMDelay()]
        [ORMParentReference()]
        public virtual Class人员基本信息 现场联系人
        {
            get
            {
                return _现场联系人; 
            }
            set
            {
                _现场联系人 = value; 
            }
        }

        private DateTime _合同签订日期 = DateTime.Today;
        [ORMField(Format="yyyyMMdd")]
        public virtual DateTime 合同签订日期
        {
            get { return _合同签订日期; }
            set { _合同签订日期 = value; }
        }

        //private decimal _报价 = 0;

        //public virtual decimal 报价
        //{
        //    get { return _报价; }
        //    set { _报价 = value; }
        //}

        //private string _报价机型 = null;

        //public virtual string 报价机型
        //{
        //    get { return _报价机型; }
        //    set { _报价机型 = value; }
        //}

        private DateTime _发货日期 = DateTime.Today ;
        [ORMField(Format = "yyyyMMdd")]
        public virtual DateTime 发货日期
        {
            get { return _发货日期; }
            set { _发货日期 = value; }
        }

        private DateTime _到货日期 = DateTime.Today ;
        [ORMField(Format = "yyyyMMdd")]
        public virtual DateTime 到货日期
        {
            get { return _到货日期; }
            set { _到货日期 = value; }
        }

        private decimal _合同总价 = 0;

        public virtual decimal 合同总价
        {
            get { return _合同总价; }
            set { _合同总价 = value; }
        }

        //private string _所对型号 = null;

        //public virtual string 所对型号
        //{
        //    get { return _所对型号; }
        //    set { _所对型号 = value; }
        //}

        private decimal _合同单价 = 0;

        public virtual decimal 合同单价
        {
            get { return _合同单价; }
            set { _合同单价 = value; }
        }

        private string _付款方式 = null;

        public virtual string 付款方式
        {
            get { return _付款方式; }
            set { _付款方式 = value; }
        }

        private decimal _已付货款 = 0;

        public virtual decimal 已付货款
        {
            get { return _已付货款; }
            set { _已付货款 = value; }
        }

        private string _特殊要求 = null;

        public virtual string 特殊要求
        {
            get { return _特殊要求; }
            set { _特殊要求 = value; }
        }

        private string _到货情况 = null;

        public virtual string 到货情况
        {
            get { return _到货情况; }
            set { _到货情况 = value; }
        }

        private string _F168时间 = null;

        public virtual string F168时间
        {
            get { return _F168时间; }
            set { _F168时间 = value; }
        }

        private string _质保金时间 = null;

        public virtual string 质保金时间
        {
            get { return _质保金时间; }
            set { _质保金时间 = value; }
        }

        private decimal _运费 = 0;

        public virtual decimal 运费
        {
            get { return _运费; }
            set { _运费 = value; }
        }

        private float _提成比率 = 0;

        public virtual float 提成比率
        {
            get { return _提成比率; }
            set { _提成比率 = value; }
        }

        private decimal _已提金额 = 0;

        public virtual decimal 已提金额
        {
            get { return _已提金额; }
            set { _已提金额 = value; }
        }

        private string _提成备注 = null;

        public virtual string 提成备注
        {
            get { return _提成备注; }
            set { _提成备注 = value; }
        }

        private string _项目备注 = null;

        public virtual string 项目备注
        {
            get { return _项目备注; }
            set { _项目备注 = value; }
        }

        private List<Class订购机型> _订购机型 = null;
        [ORMRelation( ORMRelationStyle.OneToMany , UniteDeleteForDelete=true )]
        [ORMDelay()]
        public virtual List<Class订购机型> 订购机型
        {
            get { return _订购机型; }
            set { _订购机型 = value; }
        }

        private Enum项目状态 _项目状态 = Enum项目状态.无效状态;
        //[ORMSort( ORMSortStyle.Ascent , Priority=0)]
        public virtual Enum项目状态 项目状态
        {
            get { return _项目状态; }
            set { _项目状态 = value; }
        }

        public override string ToString()
        {
            return this.项目名称;
        }
    }

    public enum Enum项目状态
    {
        无效状态 =0 ,
        争取中 = 1,
        成功 = 2,
        失败 = 3,
        取消 = 4
    }
}
